import {defineStore} from "pinia";
import {ref, computed} from "vue";

export const useUserStore = defineStore('user', () => {
    // 登录token
    const token = ref(null);

    // 用户信息
    const userInfo = ref(null);

    // 是否登录
    function isLogin() {
        console.log('isLogin token:', token.value);
        return token.value !== null && token.value !== undefined && token.value !== '';
    }

    // 设置token
    function setToken(value) {
        token.value = value;
        console.log('token:', token.value);
    }

    // 获取token
    function getToken() {
        return token.value;
    }

    // 获取用户信息
    function getUserInfo() {
        return userInfo.value;
    }

    // 设置用户信息
    function setUserInfo(value) {
        userInfo.value = value;
        console.log('userInfo设置成功:', userInfo.value);
    }

    // 清空所有数据
    function clearAll(){
        token.value = null;
        userInfo.value = null;
    }

    return {
        token,userInfo,isLogin,setToken,getToken, getUserInfo,setUserInfo, clearAll
    }
},{
    // 数据持久化
    persist: {
        enabled: true,
        storage: localStorage,
    }
});
